Warnings--;
[adiumx.git] / Plugins / Status Menu Item / CBStatusMenuItemController.h
blob03bb98cbdec68fe8f59402b065c6aa69b624211b
1 /*
2 * Adium is the legal property of its developers, whose names are listed in the copyright file included
3 * with this source distribution.
4 *
5 * This program is free software; you can redistribute it and/or modify it under the terms of the GNU
6 * General Public License as published by the Free Software Foundation; either version 2 of the License,
7 * or (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
10 * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
11 * Public License for more details.
13 * You should have received a copy of the GNU General Public License along with this program; if not,
14 * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 #import <Adium/AIObject.h>
18 #import <Adium/AIChatControllerProtocol.h>
19 #import <Adium/AIContactControllerProtocol.h>
20 #import "AIMenuBarIcons.h"
22 @class AIAccountMenu, AIStatusMenu, AIContactMenu;
23 @protocol AIListObjectObserver;
25 @interface CBStatusMenuItemController : AIObject <AIChatObserver, AIListObjectObserver>
27 NSStatusItem *statusItem;
28 NSMenu *mainMenu;
29 NSMenu *mainAccountsMenu;
30 NSMenu *mainContactsMenu;
32 AIContactMenu *contactMenu;
33 AIAccountMenu *accountMenu;
34 AIStatusMenu *statusMenu;
35 AIMenuBarIcons *menuIcons;
37 NSMutableArray *accountMenuItemsArray;
38 NSMutableArray *stateMenuItemsArray;
39 NSMutableArray *contactMenuItemsArray;
40 NSMutableArray *openChatsArray;
42 NSTimer *unviewedContentFlash;
44 BOOL showBadge;
45 BOOL flashUnviewed;
46 BOOL currentlyIgnoringUnviewed;
47 BOOL unviewedContent;
48 BOOL showContactGroups;
50 BOOL accountsMenuNeedsUpdate;
51 BOOL contactsMenuNeedsUpdate;
52 BOOL mainMenuNeedsUpdate;
55 + (CBStatusMenuItemController *)statusMenuItemController;
56 - (void)invalidateTimers;
58 @end